System managing a plurality of virtual volumes and a virtual volume management method for the system

ABSTRACT

This invention provides a control technique of a data processing system, in which functions of a highly-functional high-performance storage system are achieved in an inexpensive storage system so as to effectively use the existing system and reduce the cost of its entire system. This system has a RAID system, an external subsystem, a management server, a management client and the like. The management server includes an information management table for storing mapping information of the RAID system and the external subsystem. When performing copy process, the pair creation in which a logical volume of the RAID system is set as a primary volume of copy source and a logical volume of a mapping object of the RAID system mapped from the logical volume of the external subsystem is set as a secondary volume of copy destination is executed from the management client by using the information management table.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application Ser. No. 11/767,116,filed Jun. 22, 2007, which is a continuation of application Ser. No.11/431,828, filed May 11, 2006 (now U.S. Pat. No. 7,290,103), which, inturn, is a continuation of application Ser. No. 10/971,147, filed Oct.25, 2004 (now U.S. Pat. No. 7,139,888); which claims priority fromJapanese Pat. Appln. JP 2004-249459, filed on Aug. 30, 2004, the entiredisclosures of all of the above-identified applications are herebyincorporated by reference.

TECHNICAL FIELD OF THE INVENTION

The present invention relates to a technique for controlling a dataprocessing system and more particularly to a technique effectivelyapplied to the process for establishing a backup operating system usinga data management function among plural storages.

BACKGROUND OF THE INVENTION

According to the examination by the inventor of the present invention,the following techniques are known as the control techniques for theconventional data processing systems.

For example, a database system for handling a large amount of data suchas a data center adopts such a method that uses a storage system formedseparately from its host system to manage data. This storage system isconstituted of, for example, a disk array device and the like. The diskarray device is constituted by arranging a large number of storagedevices in the form of array and is established based on, for example,the redundant arrays of inexpensive disks (RAID). At least one logicalvolume is set on a physical storage area provided by the storage devicegroup and this logical volume is provided to the host system. The hostsystem is capable of writing or reading data to/from the logical volumeby transmitting a predetermined command.

In such a database system, the amount of data managed by the databasehas been increasing day by day with the development of informationsociety. For this reason, a higher-performance and larger-capacitystorage system has been demanded and new storage systems have beendeveloped to meet such a market demand. As a method for introducing anew storage system into a data processing system, for example, there area method for replacing old storage system with a new storage system soas to constitute the data processing system all based on the new storagesystem (Published Japanese Translation of PCT Application No. 10-508967)and a method in which the new storage system is added to the dataprocessing system of the old storage system so that the old and newstorage systems coexist.

SUMMARY OF THE INVENTION

As a result of the examination by the inventor of the present inventionfor the control technique of the conventional data processing systemdescribed above, the following matters have been made evident.

As for the method for the transition from an old storage system to a newstorage system as mentioned above (Published Japanese Translation of PCTApplication No. 10-508967), although the function and performance of thenew storage system can be utilized, the old storage system cannot beutilized effectively and introduction cost is high. On the other hand,as for the method for achieving coexistence of the old storage systemand the new storage system, each storage system needs to prepare its ownbackup with its own management means, and further, the function of thenew storage system is not utilized in the old storage system and the oldstorage system needs the functional improvement and the resultant costis required.

Accordingly, an object of the present invention is to provide atechnique for controlling a data processing system, in which advancedfunctions possessed by a new-type, highly-functional andhigh-performance storage system are achieved in a storage area of theold-type and inexpensive data storage system so as to make an effectiveuse of the existing system and reduce the cost of its entire system.

The above and other objects and novel characteristics of the presentinvention will be apparent from the description and the accompanyingdrawings of this specification.

The typical ones of the inventions disclosed in this application will bebriefly described as follows.

(1) The first data processing system according to the present inventioncomprises: a first storage system; a second storage system; a hostsystem for executing data I/O with the first storage system; and amanagement unit for controlling the first storage system and the secondstorage system, in which the components are communicably connected amongone another through a network, and the first data processing system hasfollowing characteristics in the establishment of the backup operatingsystem using an online data copy function in the storage system.

That is, in the first data processing system according to the presentinvention, the first storage system has a first storage device and afirst logical volume and a second logical volume which are set in thefirst storage device. The second storage system has a second storagedevice and a third logical volume which is set in the second storagedevice and mapped in the second logical volume of the first storagesystem. The management unit includes: an information management tablewhich fetches configuration information of the first storage system andconfiguration information of the second storage system and storesmapping information of the second logical volume of the first storagesystem and the third logical volume of the second storage system; andpair creating means for executing the pair creation when performing copyprocess, in which the first logical volume of the first storage systemis set as a primary volume of copy source and the second logical volumeof the first storage system mapped from the third logical volume of thesecond storage system is set as a secondary volume of copy destinationby using the information management table.

Further, the first storage system has a connecting function forconnecting to the second storage system. The management unit has amanagement client, a management server, and a management agent eachhaving management means for controlling a control device for issuing acommand to the first storage system.

Also, when establishing a backup operating system, the management unitexecutes a discovery process for the first storage system by means ofthe management means, a setting process of a logical volume provided bythe connecting function with using the management means, a pair creationprocess in which the first logical volume loaded on the first storagesystem is set as a primary volume and the second logical volume loadedon the first storage system mapped from the second storage system is setas a secondary volume by using the management means, and a confirmationprocess for the pair creation with using the GUI of the managementclient.

(2) The second data processing system according to the present inventioncomprises: a first storage system; a second storage system; a thirdstorage system; a host system for executing data I/O with the firststorage system and the third storage system; and a management unit forcontrolling the first storage system, the second storage system, and thethird storage system, in which the components are communicably connectedamong one another through a network, and the second data processingsystem has following characteristics in the establishment of the backupoperating system using a remote data copy function between storagesystems.

That is, in the second data processing system according to the presentinvention, the first storage system has a first storage device and asecond logical volume set in the first storage device. The secondstorage system has a second storage device and a third logical volumeset in the second storage device and mapped in the second logical volumeof the first storage system. The third storage system has a thirdstorage device and a first logical volume set in the third storagedevice. The management unit includes: an information management tablewhich fetches configuration information of the first storage system,configuration information of the second storage system, andconfiguration information of the third storage system and stores mappinginformation of the second logical volume of the first storage system andthe third logical volume of the second storage system; and pair creatingmeans for executing the pair creation when performing copy process, inwhich the first logical volume of the third storage system is set as aprimary volume of copy source and the second logical volume of the firststorage system mapped from the third logical volume of the secondstorage system is set as a secondary volume of copy destination by usingthe information management table.

Further, the first storage system has a connecting function forconnecting to the second storage system. The management unit has amanagement client, a management server, and a management agent eachhaving management means for controlling a control device for issuing acommand to the first storage system.

Also, when establishing a backup operating system, the management unitexecutes a discovery process for the first storage system by means ofthe management means, a setting process of a logical volume provided bythe connecting function with using the management means, a pair creationprocess in which the first logical volume loaded on the third storagesystem is set as a primary volume and the second logical volume loadedon the first storage system mapped from the second storage system is setas a secondary volume by using the management means, and a confirmationprocess for the pair creation with using the GUI of the managementclient.

The effect obtained by the representative one of the inventionsdisclosed in this application will be briefly described as follows.

According to the present invention, a high-speed and advanced functionpossessed by a highly-functional and high-performance storage system canbe achieved in an inexpensive storage system, and consequently, theexisting data processing system can be utilized effectively and the costof the entire system can be reduced.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing the entire structure of dataprocessing system according to an embodiment of the present invention;

FIG. 2 is a block diagram showing the structure of principal parts ofthe data processing system according to an embodiment of the presentinvention;

FIG. 3 is a flowchart showing the process for establishing the backupoperating system in the data processing system according to theembodiment of the present invention;

FIG. 4 is a flowchart showing the discovery process of RAID system inthe data processing system according to the embodiment of the presentinvention;

FIG. 5 is a flowchart showing the LU setting process provided by the ESMfunction in the data processing system according to the embodiment ofthe present invention;

FIG. 6 is an explanatory diagram showing an information management tablenecessary for mapping in the data processing system according to theembodiment of the present invention;

FIG. 7 is an explanatory diagram showing a configuration for mapping bythe ESM function in the data processing system according to theembodiment of the present invention;

FIG. 8 is a flowchart showing a pair creation process for PVOL (primaryvolume) and SVOL (secondary volume) in the data processing systemaccording to an embodiment of the present invention;

FIG. 9 is an explanatory diagram showing a selection screen of a storagesubsystem for PVOL in the data processing system according to anembodiment of the present invention;

FIG. 10 is an explanatory diagram showing a PVOL selection screen in thedata processing system according to the embodiment of the presentinvention;

FIG. 11 is an explanatory diagram showing a copy type selection screenin the data processing system according to the embodiment of the presentinvention;

FIG. 12 is an explanatory diagram showing an SVOL selection screen inthe data processing system according to the embodiment of the presentinvention;

FIG. 13 is an explanatory diagram showing an SVOL detail screen in thedata processing system according to the embodiment of the presentinvention;

FIG. 14 is an explanatory diagram showing a pair creation process afterthe PVOL and SVOL are determined in the data processing system accordingto the embodiment of the present invention;

FIG. 15 is an explanatory diagram showing a confirmation process for thepair creation in the data processing system according to the embodimentof the present invention;

FIG. 16 is an explanatory diagram showing a pair creation completionscreen in the data processing system according to the embodiment of thepresent invention;

FIG. 17 is an explanatory diagram showing a backup operating system inthe data processing system according to the embodiment of the presentinvention;

FIG. 18 is an explanatory diagram showing a data write operation into anexternal subsystem in the data processing system according to theembodiment of the present invention;

FIG. 19 is an explanatory diagram showing a data read operation from anexternal subsystem in the data processing system according to theembodiment of the present invention;

FIG. 20 is a block diagram showing the structure of principal parts inanother data processing system according to the embodiment of thepresent invention; and

FIG. 21 is a block diagram showing the structure of principal parts inanother data processing system relative to FIG. 2 according to theembodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, embodiments of the present invention will be described indetail with reference to the accompanying drawings. Note that componentshaving the same function are denoted by the same reference numeralsthroughout the drawings for describing the embodiments, and therepetitive description thereof will be omitted.

<Entire Structure of Data Processing System>

An example of the entire structure of the data processing systemaccording to the embodiment of the present invention will be describedwith reference to FIG. 1. FIG. 1 is a block diagram showing the entirestructure of the data processing system.

As shown in FIG. 1, the data processing system of this embodimentcomprises RAID systems 100 and 150, an external subsystem 400, aninformation processing unit 500 of a host system, and an informationprocessing unit 600 of a management client. Hereinafter, the structureand function of the RAID system 100 will be mainly described, and theRAID system 150 also has the same structure and function.

The RAID system 100 is constituted as, for example, a disk arraysubsystem. The present invention is not limited to this example, and theRAID system 100 can be composed as a highly-functional intelligent-typefiber channel switch.

The RAID system 100 has a disk control unit 200 and a disk drive unit300. The disk control unit 200 controls the disk drive unit 300 inaccordance with a command received from the information processing unit500 of a host system. For example, the disk control unit 200 receives adata I/O request from the information processing unit 500 of the hostsystem and reads/writes data stored in the storage device 310 providedin the disk drive unit 300. Further, the disk control unit 200 receivesvarious kinds of commands for controlling the RAID system 100 from theinformation processing unit 600 of a management client so as to carryout various settings of the RAID system 100.

The external subsystem 400 has a storage device 410. Additionally, itcan include a channel control portion or a disk control portion. Theexternal subsystem 400 is connected to the RAID system 100 through LAN(local area network) and SAN (storage area network), and the storagedevice 410 of the external subsystem 400 is handled as an internalstorage device of the RAID system 100.

The information processing units 500 and 600 of a host system and amanagement client are information devices such as a computer having CPUand memory. Various kinds of programs are executed by the CPU possessedby the information processing units 500 and 600 so as to achieve variousfunctions. The information processing units 500 and 600 can be apersonal computer or work station or a mainframe computer. Particularly,the information processing unit 500 of a host system is used as acentral computer of bank's automatic teller machine or aircraft seatreservation system. Further, the information processing unit 600 of themanagement client is used as a control computer for maintenance andcontrol of the RAID system 100.

Referring to FIG. 1, the information processing unit 500 of a hostsystem is communicably connected to a disk control unit 200 through SAN.The SAN is a network for exchanging data with the information processingunit 500 of the host system in units of block which is the datamanagement unit in the storage sources provided by the disk drive unit300. Communication between the information processing unit 500 of thehost system and the disk control unit 200 via the SAN is carried outaccording to a fiber channel protocol. Data access request in units ofblock is transmitted from the information processing unit 500 of thehost system to the RAID system 100 according to the fiber channelprotocol.

Further, the information processing unit 500 of the host system can bedirectly and communicably connected to the disk control unit 200 notthrough any network such as the SAN. Communication between theinformation processing unit 500 of the host system and the disk controlunit 200 not through the network is made according to communicationprotocol such as fiber connection (FICON) (Registered Trademark),enterprise system connection (ESCON) (Registered Trademark), advancedconnection architecture (ACONARC) (Registered Trademark), fiberconnection architecture (FIBARC) (Registered Trademark) and the like.The data access request in units of block is transmitted from theinformation processing unit 500 of the host system to the RAID system100 according to these communication protocols.

Of course, the information processing unit 500 of the host system andthe disk control unit 200 may be connected not only by the SAN ordirectly without using the SAN but also through a local area network(LAN). If they are connected through the LAN, the communicationtherebetween can be made according to, for example, transmission controlprotocol/internet protocol (TCP/IP).

Also, the information processing unit 600 of the management client isconnected to the disk control unit 200 through the LAN. The LAN can beof the Internet or of a dedicated network. The communication between theinformation processing unit 600 of a management client and the diskcontrol unit 200 executed through the LAN is carried out according to,for example, the TCP/IP protocol. The data access request (data I/Orequest in units of file) by specifying a file name is transmitted tothe RAID system 100 from the information processing unit 600 of themanagement client.

<Disk Drive Unit>

The disk drive unit 300 has a plurality of storage devices 310.Consequently, it is possible to provide a large-capacity storage area tothe information processing unit 500 of the host system and theinformation processing unit 600 of the management client. The storagedevice 310 can be formed of data storage medium such as hard disk or aplurality of hard disk drives which constitute redundant arrays ofinexpensive disks (RAID). Further, it is possible to set a logicalvolume which acts as a logical storage area to the physical volume whichis a physical storage area provided by the storage device 310.

The disk control unit 200 and the disk drive unit 300 can be directlyconnected as shown in FIG. 1 or can be connected through a network.Further, the disk drive unit 300 may be constituted integrally with thedisk control unit 200.

<Disk Control Unit>

The disk control unit 200 comprises a channel control portion 210, ashared memory 220, a cache memory 230, a disk control portion 240, acontrol terminal 250 and a connecting portion 260. The disk control unit200 communicates with the information processing unit 500 of a hostsystem through the SAN using the channel control portion 210 or directlywithout using the network.

The channel control portion 210 is provided with a communicationinterface for communicating with the information processing unit 500 ofa host system and the information processing unit 600 of a managementclient and includes a function for exchanging data I/O commands with theinformation processing units 500 and 600 of the host system and themanagement client.

Each channel control portion 210 is connected to a control terminal 250through an internal LAN. Consequently, a micro program to be executed bythe channel control portion 210 is sent from the control terminal 250and can be installed therein.

The connecting portion 260 connects the channel control portion 210, theshared memory 220, the cache memory 230, the disk control portion 240and the control terminal 250 among one another. Exchange of data andcommand among the channel control portion 210, the shared memory 220,the cache memory 230, the disk control portion 240 and the controlterminal 250 is carried out through the connecting portion 260. Theconnecting portion 260 is constituted of, for example, a crossbarswitch.

The shared memory 220 and the cache memory 230 are memories shared bythe channel control portion 210 and the disk control portion 240. Whilethe shared memory 220 is mainly used for storing control information orcommand, the cache memory 230 is mainly used for storing data.

For example, when a data I/O request which a channel control portion 210receives from the information processing unit 500 of the host system isa write command, the channel control portion 210 writes the writecommand into the shared memory 220 and writes the write data receivedfrom the information processing unit of the host system into the cachememory 230. On the other hand, the disk control portion 240 monitors theshared memory 220 and when it detects that a write command is writteninto the shared memory 220, it reads out the write data from the cachememory 230 in accordance with the command and writes it into the storagedevice 310 in the disk drive unit 300.

Also, if the data I/O request which a channel control portion 210receives from the information processing unit 500 of the host system isa read command, it is checked whether or not data to be read existswithin the cache memory 230. Here, if such data exists within the cachememory 230, the channel control portion 210 sends the data to theinformation processing unit 500 of the host system. On the other hand,if no data to be read exists within the cache memory 230, the channelcontrol portion 210 writes a read command into the shared memory 220 andmonitors the shared memory 220. After detecting that the read command iswritten into the shared memory 220, the disk control portion 240 readsthe data to be read from the storage device 310 in the disk drive unit300 and writes it into the cache memory 230, and at the same time,writes a related note into the shared memory 220. Then, when the channelcontrol portion 210 detects that the data to be read is written into thecache memory 230, the data is set to the information processing unit 500of the host system.

In this way, data is exchanged between the channel control portion 210and the disk control portion 240 through the cache memory 230, and ofthe data to be stored in the storage device 310, data read or written bythe channel control portion 210 or the disk control portion 240 isstored in the cache memory 230.

In addition to a structure in which data write or read from the channelcontrol portion 210 to the disk control portion 240 is instructedindirectly through the shared memory 220, for example, the structure inwhich the data write or read is instructed from the channel controlportion 210 to the disk control portion 240 directly not through theshared memory 220 is also available. Further, a data I/O control portionmay be provided by providing the channel control portion 210 with thefunction of the disk control portion 240.

The disk control portion 240 is communicably connected to the pluralstorage devices 310 which storing data so as to control the disk driveunit 300. For example, as described above, data read/write to thestorage device 310 is executed in accordance with the data I/O requestwhich the channel control portion 210 receives from the informationprocessing unit 500 of the host system.

The respective disk control portions are communicably connected throughthe internal LAN together with the control terminal 250. Consequently, amicro program to be executed by the disk control portion 240 can betransmitted from the control terminal 250 and installed therein.

Although the shared memory 220 and the cache memory 230 are providedindependently of the channel control portion 210 and the disk controlportion 240 in this embodiment, the present invention is not limited tothis example, and it is also preferable that the shared memory 220 orthe cache memory 230 may be provided separately in each of the channelcontrol portion 210 and the disk control portion 240. In this case, theconnecting portion 260 mutually connects the channel control portion 210and the disk control portion 240 having the dispersed shared memories220 or the cache memories 230.

The structure is also preferable in which at least any one of thechannel control portion 210, the disk control portion 240, theconnecting portion 260, the shared memory 220 and the cache memory 230is integrated with the other one.

The control terminal 250 is a computer for maintenance and control ofthe RAID system 100. By operating the control terminal 250, an operatorcan carry out setting of the configuration of the storage device 310 inthe disk drive unit 300, setting of a path which is a communication pathbetween the information processing unit 500 of the host system and theinformation processing unit 600 of the management client and the channelcontrol portion 210, setting of logical volume and installation of amicro program to be executed in the channel control portion 210 and thedisk control portion 240. The settings of the configuration of thestorage devices 310 in the disk drive unit 300 include the increase anddecrease of the number of the storage devices 310 or the configurationchange of the RAID (changing from the RAID 1 to RAID 5).

Further, the control terminal 250 can perform the confirmation of theoperating condition of the RAID system 100, the determination of a faultposition, and the installation of an operating system which the channelcontrol portion 210 executes. These settings and controls can be carriedout from a user interface included in the control terminal 250 or a userinterface of the information processing unit 600 of the managementclient which displays a web page provided by the web server operatingunder the control terminal 250. An operator can set an object andcontents to be monitored about a trouble and a destination ofnotification about the trouble by operating the control terminal 250.

The control terminal 250 can be incorporated in the disk control unit200 or provided externally. Further, the control terminal 250 can be acomputer dedicated for maintenance and control of the disk control unit200 and the disk drive unit 300 or a general-purpose computer providedwith maintenance and control function.

<Structure of Principal Part of Data Processing System>

An example of the structure of principal parts of the data processingsystem according to an embodiment of the present invention will bedescribed with reference to FIGS. 2 and 21. FIG. 2 is a block diagramshowing the structure of the principal parts of the data processingsystem, and FIG. 21 is a diagram showing the structure of principalparts of other example of the data processing system.

As for the data processing system of this embodiment, its entirestructure and each function of the components are the same as thosedescribed in detail with reference to FIG. 1. The structure of theprincipal part which is a feature of this embodiment includes, as shownin FIG. 2, a RAID system 100 as a first storage system, an externalsubsystem 400 as a second storage system, an application server 510 as ahost system (information processing unit 500 in FIG. 1) for executingdata I/O with the RAID system 100, and a management server 610 andmanagement client 620, which are management units (informationprocessing unit 600 in FIG. 1) for controlling the configurationinformation of the RAID system 100 and the external subsystem 400, andthe RAID system 100 and the application server 510 are communicablyconnected to each other through the SAN. The RAID system 100, theexternal subsystem 400, the application server 510, the managementserver 610 and the management client 620 are communicably connectedamong one another through the SAN.

This data processing system can establish a backup operating system byusing a storage control software which is control means for controllinga control device for issuing a command to a storage subsystem, namely asoftware called command device manager (abbreviated as HDvM here).

The RAID system 100 is a storage subsystem having a function to connectexternal storages (external storage management: abbreviated as ESM) tobe objects for the control by the HDvM. This ESM function is atechnology for mapping a volume of an external storage subsystem withinits own storage subsystem as a virtual volume. This RAID system 100includes a storage device 310, and a logical volume and a logical volume(virtual volume) which is an object for mapping are set in this storagedevice 310. Further, the RAID system 100 includes an external port 110which is connected to an external subsystem 400 through a data path.This external port is a port provided in the channel control portion210. Further, the control port is connected to LAN through a controlpath.

The external subsystem 400 is an object for control by the HDVM and is astorage subsystem to be an object for external storage of the RAIDsystem 100. This external subsystem 400 includes the storage device 410and a logical volume to be mapped in a logical volume (virtual volume)which is a mapping object of the RAID system 100 is set in this storagedevice 410. Further, the external subsystem 400 has a port 420 which isconnected to the RAID system 100 through data path. Also, the controlport is connected to the LAN through a control path.

As shown in FIG. 21, the external port 110 of the RAID system 100 andthe port 420 of the external subsystem 400 can be connected by a datapath through the SAN, and this structure also achieves the ESM function.

The management server 610 is a computer system for installing the HDvMserver 611. This management server 610 may be used as a managementclient. The management client 620 is a computer system in which the HDvMclient 621 operates. This management client 620 may be incorporated inthe management server 610.

In the management server 610 and the management client 620, the databaseof the management server 610 includes an information management table612 for fetching the configuration information of the RAID system 100and the configuration information of the external subsystem 400 andstoring mapping information about logical volume (virtual volume) whichis an object of mapping by the RAID system 100 and logical volume of theexternal subsystem 400. In the copy process, the HDvM enables the paircreation from the GUI image 622 of the management client 620, in which alogical volume of the RAID system 100 is set as a primary volume of copysource and a virtual volume mapped from a logical volume of the externalsubsystem 400 is set as a secondary volume of copy destination by usinginformation management table 612.

The application server 510 is a host computer system having thefunctions of the HDvM agent 511 and the RAID manager 512.

This data processing system is a backup operating system including theRAID system 100 which provides the ESM function the and the HDvM of thestorage control software and has an online copy function within thestorage subsystem, namely a copy function called shadow image here. Whenthis HDvM controls the configuration information necessary for backupoperation by means of all the storage subsystems through the RAID system100, all the storage subsystems can be controlled integrally by the RAIDsystem 100 and the HDvM.

<Process for Establishing Backup Operating System>

An example of the process for establishing the backup operating systemin the data processing system according to an embodiment of the presentinvention will be described with reference to FIG. 3. FIG. 3 is aflowchart showing the process of establishing the backup operatingsystem.

In the following description, the logical volume is sometimes expressedas “volume”, “VOL” or “LDEV (logical device)”. If speaking in detail,this “LDEV” is a unit of a storage area divided logically. Further, theunit of a storage area which serves as a unit for I/O access is called“LU (logical unit)” and a single LU may be gained by combining pluralLDEVs. The number for identifying this LU is “LUN (logical unitnumber)”. Further, of these logical volumes, the one set in the systemis called internal volume and the one set outside is called externalvolume, while the one set virtually is called virtual volume.Additionally, a logical volume to be copied is called “PVOL (primaryvolume)” and a logical volume of copy destination is called “SVOL(secondary volume)”.

In the process of establishing the backup operating system, as shown inFIG. 3, first, discovery process of the RAID system 100 is carried outby the HDvM (S1). Further, the setting process of the LU provided by theESM function using the HDvM is carried out (S2). Subsequently, paircreation process using the HDvM in which the internal LDEV loaded on theRAID system 100 is set as PVOL and the internal LDEV mapped from theexternal subsystem 400 is set as SVOL is carried out (S3). Then,confirmation process of the pair creation process by using a GUI image622 of the management client 621 is carried out (S4). Consequently, thebackup operating system is completed so that the mapped external volumecan be used as SVOL of a shadow image.

<Discovery Process of RAID System (S1)>

An example of the discovery process (S1) of the RAID system will bedescribed with reference to FIG. 4. FIG. 4 is a flowchart showing thediscovery process (S1) of the RAID system.

In the discovery process (S1) of the RAID system by the HDvM, as shownin FIG. 4, first, the HDVM client 621 requests the HDvM server 612 todetect the RAID system 100 (S11). Then, the HDvM server 612 detects theRAID system 100 by a RAID manager S12, stores its information in thedata base within the management server 610 and notifies the HDvM client621 of the registration of the RAID system 100 (S12-S14). Consequently,the detection of the RAID system 100 by the HDvM is completed.

<Setting Process of LU Provided by ESM Function (S2)>

An example of the setting process of the LU provided by the ESM functionwill be described with reference to FIGS. 5 to 7. FIG. 5 is a flowchartshowing the setting process (S2) of the LU provided by the ESM function,FIG. 6 is an explanatory diagram showing an information management tablenecessary for mapping, and FIG. 7 is an explanatory diagram showing theconfiguration for mapping by the ESM function.

In the setting process (S2) of the LU provided by the ESM function usingthe HDvM, as shown in FIG. 5, the RAID system 100 sets a port of theRAID system 100 in the external port 110 with using a storage navigatorwhich is a subsystem control view of the RAID system 100 of the HDvM sothat the RAID system 100 can use the ESM function (S21). Then, theexternal subsystem 400 is set with using the HDvM in order for the RAIDsystem 100 to discover the external LU (S22).

In the setting of the external subsystem 400, the port attribute of theexternal subsystem 400 to be connected to the external port 110 ischanged (S22 a). Then, this changed port is selected and “addition ofstorage” is executed (S22 b). That is, a host system identified as theexternal port 110 is selected and the LUN security relating toaccessibility from this host system is added.

Subsequently, the discovery of the external LU is executed with usingthe storage navigator so as to make the RAID system 100 recognize theexternal LU (S23). Then, the external LU is mapped on the internal LDEVwith using the storage navigator in order to make the discoveredexternal LU available in the RAID system 100 (S24).

In the mapping of this external LU to the internal LDEV, first, anexternal volume group is determined (S24 a). That is, the externalvolume is registered in the management server 610 as an external volumegroup in order to map the external volume as the internal volume.Further, an IO suppression mode is determined (S24 b). Morespecifically, input/output from a host system to a mapped volume isenabled when the external volume is mapped as an internal volume.Consequently, the mapped volume can be used from the host system as ifit is a volume of the RAID system 100. Then, an emulation type is set(S24 c).

As shown in FIG. 6, the configuration information fetched from the RAIDsystem 100 and the configuration information fetched from the externalsubsystem 400 are stored in the information management table 612necessary for this mapping. The internal LUN information from the RAIDsystem 100 includes virtual LUN information. The external LUNinformation of the external subsystem allocated to the virtual LUN ofthis RAID system 100 includes serial number of the external subsystem400 (serial number), identification information of storage device(device ID), LUN number (external LUN) for identifying the LUN which ispath information to the storage device, identification information(external WWN) unique to each port, and information of machine name(vender).

The LU to be set in the storage device 410 of the external subsystem 400is mapped in this information management table 612 through the externalport 110 as a virtual VOL set in the storage device 310 of the RAIDsystem 100. Consequently, a user can operate the internal LDEV mapped inthe information management table 612 in the same way as that for theinternal LDEV loaded on the RAID system 100 with using the HDvM as shownin FIG. 7.

<Pair Creation Process for PVOL and SVOL (S3)>

An example of the pair creation process for PVOL and SVOL will bedescribed with reference to FIGS. 8 to 14. FIG. 8 is a flowchart showingthe pair creation process (S3) for PVOL and SVOL. FIG. 9 is anexplanatory diagram showing a selection screen of the storage subsystemfor PVOL. FIG. 10 is an explanatory diagram showing PVOL selectionscreen. FIG. 11 is an explanatory diagram showing a copy type selectionscreen. FIG. 12 is an explanatory diagram showing SVOL selection screen.FIG. 13 is an explanatory diagram showing the detailed screen of SVOL.FIG. 14 is an explanatory diagram showing pair creation process afterPVOL and SVOL are determined.

In the pair creation process (S3) by using this HDVM, in which theinternal LDEV loaded on the RAID system 100 is set as PVOL and theinternal LDEV mapped from the external subsystem 400 is set as SVOL(S3), first, a storage subsystem to be set as PVOL is selected withusing the GUI image 622 of the HDvM (S31).

In this selection, first, the RAID system 100 to be an object of thePVOL is selected (S31 a). For example, in the GUI image 622 shown inFIG. 9, RAID-S@10.10.10.10 is selected from candidate storagesubsystems. Then, PVOL is selected in an identification screen of theinternal/external volumes (S31 b). For example, in the GUI image 622shown in FIG. 10, LDEV “0:35” is selected from an object list.

Further, a copy type of a selected PVOL is selected (S32). For example,in the GUI image 622 shown in FIG. 11, “shadow image” is selected from aselection of the copy types. After that, the external subsystem to beused as SVOL is selected (S33).

In this selection, external LUs which are not allocated yet and can beallocated depending on the size and emulation type are displayed (S33a). At this time, less expensive VOL (volumes) are sensed and displayedby priority. Further, SVOL (secondary volume) for pair creation isselected (S33 b). For example, in the GUI image 622 shown in FIG. 12,LDEV “0:45” is selected from LDEV list. The “0:45” of this LDEVindicates the location of the storage subsystem (SATA-S@20.20.20.20).Then, the detailed information of the external subsystem 400 isconfirmed (S33 c). For example, in the GUI image 622 shown in FIG. 13,various identification numbers and identification information aredisplayed. This means that PVOL and SVOL are determined.

Subsequently, after PVOL and SVOL are determined, as shown in FIG. 14,the management server 610 instructs the application server 510 to createa pair (S34). Further, the HDVM agent 511 of the application server 510issues a pair creation command to the RAID manager 512 (S35). Then, theRAID manager 512 throws a command line interface (CLI) command for paircreation to the RAID system 100 so as to execute the pair creation (S36)

<Confirmation Process of Pair Creation (S4)>

An example of the confirmation process (S4) of the pair creation will bedescribed with reference to FIGS. 15 and 16. FIG. 15 is an explanatorydiagram showing the confirmation process (S4) for the pair creation, andFIG. 16 is an explanatory diagram showing a pair creation completionscreen.

In the confirmation process (S4) of the pair creation using the GUIimage 622 of this management client 620, as shown in FIG. 15, themanagement server 610 acquires information from the RAID system 100 oracquires information obtained by the RAID manager 512 through the HDVMagent 511 of the application server 510 so as to recognize it as copypair information (S41). Thereafter, by delivering the information of themanagement server 610 to the management client 620, the pair creationcan be confirmed through the GUI image 622 of the management client 620(S42). For example, the completion of the pair creation in which theLDEV “35” of RAID-S@10.10.10.10 which is the RAID system 100 is set asPVOL and the LDEV “45” of SATA-S@20.20.20.20 mapped from the externalsubsystem 400 is set as SVOL can be confirmed through the GUI image 622as shown in FIG. 16.

The backup operating system as shown in FIG. 17 is completed through thediscovery process (S1) of the RAID system, the setting process (S2) ofthe LU provided by the ESM function, the pair creation process (S3) forPVOL and SVOL and the confirmation process (S4) of the pair creation.Consequently, a data processing system using the mapped external volumeas a shadow image SVOL can be established. That is, a high-speed andadvanced function possessed by the RAID system 100 can be applied to theLU of an inexpensive external subsystem 400.

<Write Operation of Data into External Subsystem>

An example of the write operation of data into the external subsystemwill be described with reference to FIG. 18. FIG. 18 is an explanatorydiagram showing the write operation of data into the external subsystem.

The host system such as the application server 510 can write data intothe logical volume (LDEV) provided by the RAID system 100. For example,it is possible to set the host system to access only a particular LDEVaccording to the zoning in which a virtual SAN subnet is set in the SANor the LUN masking in which the host system holds a list of accessibleLUNs.

If the LDEV to which the host system intends to write data is connectedto the storage device 310 of the internal RAID system 100 through avirtual volume (VDEV: virtual device), the data is written throughordinary process. That is, the data from the host system is temporarilystored in the cache memory 230 and it is stored into a predeterminedaddress of a predetermined storage device 310 from this cache memory 230through the disk control portion 240. At this time, the disk controlportion 240 converts the logical address to the physical address.Further, in the case of the RAID configuration, the same data is storedin plural storage devices 310.

Contrary to this, if LDEV to which the host system intends to write isconnected to the storage device 410 of the external subsystem 400through the virtual device, data is written in the manner shown in FIG.18. FIG. 18( a) is a flowchart mainly showing memory hierarchy and FIG.18( b) is a flowchart mainly showing the way of usage of the cachememory 230.

First, the host system clarifies an LDEV number for specifying the LDEVof write destination and a WWN for specifying a port for accessing thisLDEV and issues a write command (write) (S61). When the RAID system 100receives a write command from the host system, it generates a writecommand to be sent to the external subsystem 400 and sends it to theexternal subsystem 400 (S62). The RAID system 100 changes writedestination address information in the write command received from thehost system in accordance with the external LDEV and generates a newwrite command.

Subsequently, the host system sends data to be written to the RAIDsystem 100 (S63). Data received by the RAID system 100 is transmittedfrom the LDEV through the VDEV (S64) to the LDEV of the externalsubsystem 400 (S66). When the RAID system 100 stores data from the hostsystem in the cache memory 230, it sends back a response (good)indicating that the write is completed to the host system (S65). Whenthe external subsystem 400 receives data from the RAID system 100 (orwhen write into the storage device 410 is completed), it sends a writecompletion notification to the RAID system 100 (S67). That is, thetiming when the RAID system 100 notifies the host system of the writecompletion (S65) is different from the timing when data is actuallystored in the storage device 410 (non-synchronous method). Therefore,the host system is released from the data write process before the datais actually stored in the storage device 410 and thus can execute otherprocess.

<Operation for Reading Data from External Subsystem>

An example of the operation for reading data from the external subsystemwill be described with reference to FIG. 19. FIG. 19 is an explanatorydiagram showing the operation for reading data from the externalsubsystem.

First, the host system specifies a port and sends a data read command tothe RAID system 100 (S71). When the RAID system 100 receives the readcommand, it generates a read command to read a requested data from theexternal subsystem 400. The RAID system 100 sends the generated readcommand to the external subsystem 400 (S72). The external subsystem 400reads the data requested from the storage device 410 in accordance withthe read command received from the RAID system 100 and sends it to theRAID system 100 (S73) and notifies that the read operation is completednormally (S75). As shown in FIG. 19( b), the RAID system 100 stores thedata received from the external subsystem 400 at a predeterminedlocation in the cache memory 230 (S74).

Subsequently, the RAID system 100 reads data stored in the cache memory230 and converts its address. After that, it transmits the data to thehost system through the LUN (S76) and notifies that the read operationis completed (S77).

FIG. 19 shows the case where data is read from the external subsystem400 in accordance with the request from the host system and stored inthe cache memory 230. However, the present invention is not limited tothis example, and all or part of data stored in the external LDEV can bestored in the cache memory 230 in advance. In this case, it is possibleto read data from the cache memory 230 immediately in response to a readcommand from the host system and send it to the host system.

<Structure of Principal Parts of Another Data Processing System>

An example of the structure of principal parts in another dataprocessing system according to an embodiment of the present inventionwill be described with reference to FIG. 20. FIG. 20 is a block diagramshowing the structure of principal parts of another data processingsystem.

While FIG. 2 shows the system configuration having the copy functioncalled shadow image, the system configuration of another data processingsystem of this embodiment has a remote data copy function between thestorage subsystems, that is, a copy function called true copy, and theRAID system 150 of copy source is added to the RAID system 100 of copydestination.

That is, this data processing system comprises, as shown in FIG. 20, theRAID system 100 which is a first storage system, the external subsystem400 which is a second storage system, the RAID system 150 which is athird storage system, the application server 510 which is a host systemfor executing I/O of data between the RAID systems 100 and 150, and themanagement server 610 and management client 620 which are managementunits for controlling the configuration information of the RAID systems100, 150 and the external subsystem 400. The RAID system 100, the RAIDsystem 150, and the application server 510 are communicably connectedthrough the SAN, and the RAID system 100, the RAID system 150, theexternal subsystem 400, the application server 510, the managementserver 610, and the management client 620 are communicably connectedthrough the LAN.

According to this data processing system, a backup operating systemusing a mapped external volume as SVOL of true copy can be establishedby setting a PVOL of different storage subsystem in the above-describedprocess of selecting a storage subsystem for PVOL (S31) in <PairCreation Process for PVOL and SVOL (S3)>.

That is, by executing the pair creation process in which the internalLDEV loaded on the RAID system 150 is set as PVOL and the internal LDEVloaded on the RAID system 100 mapped from the external subsystem 400 isset as SVOL, a backup operating system can be established. Because otherprocesses are the same as those in the case of the above-describedshadow image, description thereof will be omitted.

As a result, a data processing system using the mapped external volumeas SVOL of true copy can be established, and therefore, similar to thecase of the shadow image, the high-speed and advanced function possessedby the RAID systems 100 and 150 can be applied to the LU of aninexpensive external subsystem 400.

Effect of Embodiments

(1) When establishing a backup operating system which includes the RAIDsystem 100, the external subsystem 400, the application server 510, themanagement server 610, and the management client 620 and uses the copyfunction called shadow image, a high-speed and advanced functionpossessed by the highly-functional and high-performance RAID system 100can be achieved in a storage area of an inexpensive external subsystem400.

(2) When establishing a backup operating system which includes the RAIDsystem 100, the external subsystem 400, the RAID system 150, theapplication server 510, the management server 610, and the managementclient 620 and uses the copy function called true copy, a high-speed andadvanced function possessed by the highly-functional andhigh-performance RAID systems 100 and 150 can be achieved in a storagearea of an inexpensive external subsystem 400.

(3) As a result of the above (1) and (2), existing system such as theexternal subsystem can be used effectively, and thus, the cost of theentire system can be reduced.

In the foregoing, the invention made by the inventor of the presentinvention has been concretely described based on the embodiments.However, it is needless to say that the present invention is not limitedto the foregoing embodiments and various modifications and alterationscan be made within the scope of the present invention.

1. A first storage system comprising: at least one first port to becoupled to a plurality of first information processing units; at leastone second port to be coupled to at least one second storage system; anda control unit managing a plurality of virtual volumes, one of theplurality of virtual volumes being mapped to a logical volume which isset in a storage device in the second storage system and being adaptedto be used for inputting/outputting data by at least one of theplurality of first information processing units so that the data areinputted/outputted to/from the logical volume, wherein the control unitoperates a copy function between a copy source volume and a copydestination volume, the copy source volume being selectable from aplurality of volumes including at least one of the plurality of virtualvolumes, the copy destination volume being selectable from a pluralityof volumes which include at least one of the plurality of virtualvolumes displayed with a storage location of a logical volume mapped tothe at least one of the plurality of virtual volumes selectable as thecopy destination.